Dynamic measurement of communication channel characteristics using direct sequence spread spectrum (DSSS) systems, methods and program products

ABSTRACT

A DSSS system determines transmission reliability of a communication channel in real time. A DSSS transmitter (f 0 =1/T) generates a Pseudo Noise (PN) code and modulates a carrier source [cos. (2Σγ c )] with a selected chip rate. The transmitter bandwidth is a direct function of the chip rate. The PN coded carrier signal is further modulated by a data signal [m(t)] to provide an output signal [s(t)] to a correlator via a communication channel for purposes of determining the transmission characteristic of the channel. The correlator running a variable length pseudo noise code combines the code and the carrier which relates the incoming data signal to a correlation value for detecting the data signal. The correlation value is compared to a threshold value based upon experience of reliable transmission of data through the communication channel. The value of the correlation value declines as the data is attenuated in the communication channel, thus, the band limiting effect of the communication can be determined by the change in the correlation value.

BACKGROUND OF INVENTION

[0001] 1. Field of Invention

[0002] This invention relates to communication systems, methods of operation and program products. More particularly, the invention relates to dynamic measurement of communication channel characteristics using direct sequence spread spectrum (DSSS) systems, methods and program products.

[0003] 2. Description of Prior Art

[0004] A common problem in communication system is improving data transmission reliability between sending and receiving stations. Data transmissions are subject to bandwidth limitations, propagation impairments, noise and other factors. A communication channel which includes means to perform on-the-fly analysis to measure and adjust the channel characteristics for improved reliability would solve a long-standing problem in communication systems. One communication system which measures communication characteristics during transmission is a Direct Spread Spectrum System (DSSS) described in the text Wireless LANS: Implementing Interoperable networks by J. Geir, published by Macmillan Technical Publishing, 1999 at pages 47-49, 67-68 (ISBN 98-85498). The measurement is taken for purposes of signal acquisition in synchronizing the Pseudo Noise (PN) codes at the sending and receiving stations. What is needed in the art is a DSSS system which enables the reliability of data transmission in a communication channel to be judged and the transmission adjusted accordingly for improved signal reliability.

[0005] Prior art related to DSSS communication systems includes:

[0006] (1) An article entitled “A New Serial Search Acquisition Approach With Automatic Decision Threshold Control” by S. Chung, published 1995 IEEE 45^(th) Vehicular Technology Conference, V2, pages 530-536 discloses a CDMA signal acquisition system and uses, in each dwell, an adaptive signal threshold for signal detection and an adaptive signal classification threshold for classifying a signal versus noise. The system uses the detected signal and noise statistics to estimate SNR. The signal detection threshold is obtained from the maximum correlation value of the acquisition process. The signal classification threshold is derived from the average value of the signal detection threshold and noise estimate. If a new signal candidate is detected, both the signal detection threshold and the signal classification threshold are updated. As a result, the signal classification threshold is equivalent to the threshold used in the conventional serial acquisition system. The decision to stop or continue the acquisition search is aided by a pre-verification process.

[0007] (2) U.S. Pat. No. 6,052,408 issued Apr. 18, 2000 discloses improving the performance of a cellular communication system using direct sequence spread spectrum techniques. An apparatus and process enable dynamic modification of communication system parameters including PN code length, chipping rate and modulation technique for transmission of a data packet. Modification is based on proximity of the transmitter and receiver, noise level, transmitter and receiver capabilities and other factors. The system makes tradeoffs between data transmission speed and communication range to improve system performance.

[0008] (3) U.S. Pat. No. 5,732,111 issued Mar. 23, 1998 discloses a frequency error calibration, estimation and compensation device and method for direct sequence spread spectrum systems, such as digital cordless telephones having a handset and a base station. Initial frequency calibration occurs when the handset is physically coupled to the base station. The allowable frequency error range is divided into a plurality of frequency bins. Both the handset and base station transmit and receive messages using a predetermined frequency offset bin as an estimate of the frequency error. A signal quality value is determined and then a next bin is selected and a next signal quality value is determined. Once a signal quality value has been determined for each frequency bin, a communications link is established between the handset and the base station to allow automatic frequency control tracking to fine tune the frequency offset value. If the signal quality is not above a threshold value, the procedure is repeated. After system calibration, frequency error estimation is performed by cross product demodulation of the received in-phase and quadrature signals. The cross product output is limited and filtered. A phase rotator performs frequency compensation by multiplying the received in-phase and quadrature signals by (cos.phi.(t)+jsin.phi.(t)) where. phi.(t) is the sum of the current phase value and the limited and filtered cross product value.

[0009] None of the prior art discloses dynamic measurement of a communication channel using DSSS by extracting a PN code from a received signal using a correlator value and comparing the correlator value to a threshold where a correlator value below the threshold is indicative of unreliable communication in the channel and a correlator value above the threshold indicative of reliable transmission through the channel, the transmission characteristics of the signal being adjusted according to the correlator value—threshold comparison.

SUMMARY OF INVENTION

[0010] A DSSS system determines transmission reliability of a communication channel in real time. A DSSS transmitter (f₀=1/T) generates a Pseudo Noise (PN) code, which is a sequence of chips with noise-like property. The PN code modulates a carrier source [cos(2Σγ_(c))] . The transmitter bandwidth is a direct function of the chip rate. The PN coded carrier signal is further modulated by a data signal [m(t)] to provide an output signal [s(t)] via a communication channel to a receiver including a correlator for determining the transmission characteristic of the channel. The correlator is operated with a fixed or variable length pseudo noise code, in the latter case the length depending on the noise content of the system, and is combined with the carrier which relates the incoming data signal to a correlation value for detecting the data signal. The correlation value is generated by correlating the incoming data signal to a copy of the PN code and is compared to a threshold value based upon experience of reliable transmission of data through the communication channel. The correlation value can be computed over any bandwidth and/or frequency band by adjusting the frequency of the pseudo noise code (f₀) and/or the carrier frequency (f_(c)). The value of the correlation value declines as the data is attenuated in the communication channel; thus the band limiting effect of the communication can be determined by the change in the correlation value relative to the threshold. The length of the of the pseudo noise code can be adjusted via a separate control processor to compensate for a noisy transmission environment. A control processor adjusts the transmitted signal power and/or a predistortion filter in the data transmitter. The former option would optimize the power consumption by only launching the minimum signal for a given Bit Error Rate (BER) requirement, while the latter would even allow adaptive channel equalization. As the length of the pseudo noise code increases, the correlation variable becomes less acceptable to noise in the transmission medium due to the auto correlation property of the pseudo noise codes. If the threshold value is not exceeded for the largest practical code length, the environment is too noisy for reliable data transmission.

DESCRIPTION OF DRAWINGS

[0011] The invention will be further understood from the following detailed description of a preferred embodiment taken in conjunction with an appended drawing, in which:

[0012]FIG. 1 is a representation of a Direct Sequence Spread System (DSSS) for determining the reliability of a communication channel and incorporating the principles of the present invention;

[0013]FIG. 2 is representation of a transmitter in the system of FIG. 1;

[0014]FIG. 3 is a representation of a receiver in the system of FIG. 1;

[0015]FIG. 3A is a representation of an out-of-band feedback system for adaptive control of the system of FIG. 1;

[0016]FIG. 4 is a flow diagram for synchronizing PN codes of a transmitter and a receiver in the system of FIG. 1; and

[0017]FIG. 5 is a flow diagram for calculating a correlator value for the system of FIG. 1.

DESCRIPTION OF PREFERRED EMBODIMENT

[0018] In FIG. 1, a Spread Spectrum System 100, in one embodiment a Direct Sequence Spread System (DSSS) comprises a transmitter 102 and a receiver 108 coupled to a communications channel 104 for determining and controlling the reliability of the channel for reliable communication between the transmitter and the receiver. DSSS systems are known in the art and described, for example, in the text “Wireless Communications—Principles and Practice” by T. S. Rapport, published by Prentice Hall, Upper Saddle River, N.J., 1996, Sect. 5.1 (ISBN 0113-375536-3). While a DSS System will be described, it should be understood that other Spread Spectrum Systems may be implemented using the principles of the present invention.

[0019] The transmitter 102 (to be described hereinafter in conjunction with FIG. 2) generates a spreading waveform that is several orders of magnitude greater than the minimum required signal bandwidth enabling multiple users to simultaneously use the same bandwidth without significant interference with one another. The spreading waveform is controlled by a pseudo noise code 106, which is a sequence of bytes or chips with noise-like properties. The PN code modulates a carrier source where the bandwidth is a direct function of the chip rate. The PN coded carrier signal is further modulated by a data signal to provide an output signal 110, which is applied to the communication channel 106 for purposes of measuring the reliability of the channel. The receiver 104 generates a copy of the transmitter PN code 106, which is combined with a local version of the carrier signal for synchronization with output signal 110 in both code pattern positions; rate of chip generation and carrier fade to obtain an auto-correlation relative to the degree of correspondence between the transmitted signal and the received signal, which is a phase shifted version of the output signal 110. The autocorrelation value provides an indication of the signal to noise ratio of the channel. Based on the signal to noise ratio of the channel, feedback 112 can be supplied to the transmitter for adjustments to the chip rate, length of PN code and carrier frequency for improving the quality and reliability of the communication channel.

[0020]FIG. 2 provides details of the transmitter 102. A variable frequency generator (f₀) 202 provides an input to an analog to digital converter 204 for dividing the signal f₀ into a number of bits or chips for application to a PN code generator 206 for selecting the length of a PN code. Alternatively, a fixed frequency generator (f_(i)) 208 may be provided as an output to a divider 210 for selective control of the frequency for the PN generator 206. The frequency f₀ or variable frequency f₁ is applied to a modulator 212, in which the PN generator modulates the carrier f₀ or f₁ into a PN code length for application to a data modulator 214. The carrier 202 or 208 is provided to the frequency divider 216, which provides an input to a data modulator 218, responsive to a data input 220. The output of a data modulator is provided to the modulator 214 to provide an output signal [s(t)] 110 where the signal “s” is the PN coded data signal “d” 220 incorporated into the carrier signal f₀ 202 or f₁ 208.

[0021] In FIG. 3, the receiver 108 generates a local version of the carrier and the pseudo code PN. A variable frequency generator (f₀) 302 provides an input to a phase-shifter 304. Alternatively, a fixed frequency (f₁) 306 and a frequency divider 308 may be employed to provide an alternate input to the phase-shifter 304. The phase-shifter is under the control of a correlation phase controller 310, as will be described hereinafter. An analog-digital decoder 312 receives the phase shifted f_(o) or f_(i) and provides an output to an analog digital decoder 312 which provides an input to a PN generator 316 to duplicate the PN code 106 in terms of chips, byte length and byte rate. The output of the generator 316 is a duplicated PN code 317, which is provided to a synchronizing circuit 318, which seeks to lock the local generated PN code 317 to the transmitted PN code 106 in terms of byte pattern and phase. To accomplish PN code locking, the generated PN code 317 is provided to a multiplexer 320, via a delay circuit 322, as a late representation of the generated PN code. The generated PN code 317 is also provided to a multiplexer 324 as an early representation of the generated PN code. The channel signal [s(t)] 110 is quite different from that sent by the transmitter 102 at any instant. A received channel signal 110′ is subject to a difference in carrier phase due to the channel propagation characteristics between the transmitter and the receiver. As a result, the receiver must synchronize its code sequence to the code sequence on the received signal received 110′.

[0022] The output of multipliers 320 and 324 represent correlation values for the early and late generated signals with respect to the received phase-shifted input signals. The early and late correlation values are provided to a summing circuit 326 and a different circuit 328. The early correlation value, when subtracted from the late correlation value, provides an input to the correlation phase controller 312, which adjust the phase-shifter to shift the output of the PN generator 316 until the output of the different circuit becomes zero and the summing circuit becomes the opposite value for 1 representing synchronization or lock-up of the received signal and the generated signal. When the phase-shifter receives signal [s(t)] is multiplied by a code identical to that used in generating the received signal; the effect is complimentary to the code modulator and the transmitter. The input signal is inverted each time the local correlating code sequence has a 1-0 or a 0-1 transmission. If the transmitter code is identical to the local code and the two codes are time synchronous and at each phase-shift of the transmitters signal, receiver phase-shifts it again. These complimentary phase-shifts combine to compliment one another and to restore the original carrier.

[0023] When the received and generated signals are in synchronization, the input data input signal can be captured at terminal 330. A power detector 322 determines the signal level for measuring the signal level of the output signal and compares the measured signal level to a threshold value based upon experience of reliable transmission of data through the channel. If the correlation value is above the threshold, reliable transmission is occurring through the channel. If the correction value is below the threshold, an indication is given of unreliable transmission though the channel. The power level of the date may be increased to compensation of continuation on the channel.

[0024] Alternatively, the length of the PN code may be adjusted to compensate for the continuation in the channel. However, as the PN code length increases, the correlation value becomes less susceptible to noise in the transmission medium due to the auto-correlation properties of the pseudo noise code. If the threshold value is not exceeded when the largest practice PN code is used, the environment is too noisy for reliable data transmission.

[0025]FIG. 3A discloses an out of band feedback system 350 for adaptive control of a transmitter 352 using DSS measurement of a channel 354 at a receiver 356. The transmitter, 352, based upon FIG. 2, includes a data transmitter section 358 for receiving input data 353 and providing the data to a power control section 360 responsive to a spread spectrum transmitter section 362. The power control section 360 transmits the data 353 across the channel 354 to the receiver 356, as described in FIG. 2.

[0026] The receiver 356, based upon FIG. 3, includes a data receiver section 364 for receiving a phase shifted output signal 362. After phase locking and PN code synchronization with the signal 362, a channel analyzing section computes a correlation value for the phase shifted received signal 362′. The correlation value is compared to a threshold value representative of good signal reliability through the channel based upon empirically derived data from the channel. A control signal is generated in the channel analyzing section and provided as an input to a channel processor. When the computed correlation value is below the threshold value, the processor adjusts the transmitter power control section for improved channel reliability. Alternatively, the processor may adjust the PN code length of the spread spectrum section for improved channel reliability. As another alternative, the processor may adjust the bit rate of the spread spectrum section to improve the channel reliability.

[0027]FIG. 4 discloses an alternative process 400 for synchronizing the received PN code with the generated code at the receiver 108. In step 401, a counter is initiated at zero for counting each bit in the receiver generated PN code. The counter is incremented for each bit in the generated PN code in step 403 and a correlation value is calculated and compared to a threshold value indicative of reliable transmission through the channel. In step 405, the number of bits (N) in the code is increased until the number of bits is greater than 2^(N+1)−1, which provides the Peak correlation value (P) for the received signal. After the phase shifted received carrier is phase locked to the receiver-generated version of the carrier. The process continues for carrier phase locking by setting a phase difference counter in step 407 for the carrier (f_(c)). The counter is incremented in step 409 until the maximum number carrier phases is reached in step 411 whereupon the process returns to step 403 for continued increase of the PN code bits until the Peak correlation value is reached in step 406 after which the Peak correlation value calculation process ends in step 406. A no condition at step 411 initiates an operation 413, which compares the current phase of the received signal (PD) to the current phase of the peak value of the generated code (PD_(j)). In step 415, a comparison is done between the peak correlation value P and the correlated value for a late comparison of the received and the generated PN codes. If the peak value (P) is greater than the late correlation value, a comparison is made in step 417 to determine if the peak correlation value is greater than the early correlation value between the received and generated PN codes. A yes condition sets a flag in step 419 indicative of carrier synchronization for the peak correlation value [m′(t))=P] and the process ends in 421. Where the operations 415 and 417 are not true, the process returns to recompute the phase difference until the maximum number of phases are reached in step 411, whereupon the process returns to counting the bits in the generated PN code until the received and generated PN codes are phase locked and synchronized.

[0028]FIG. 5 describes a process 500 for determining the goodness of a channel based upon the correlation values determined in FIG. 4. Before calculating the channel goodness, a center frequency counter (i) is set to zero in step 501 for a range of N frequencies to determine the carrier frequency at which the channel goodness will be calculated. The counter 501 is stepped down from the maximum frequency until the center frequency is zero. In step 503, a selected center frequency (fc) is set to (fi) and the counter (i) is incremented by 1. In step 505, the channel frequency is compared to the maximum center frequency. If the maximum center frequency has been reached, the process is stopped in operation 507. If step 505 is NO, a phase counter (j) is set to 0 for center frequency (f0) in operation 509. In an operation 511, the synchronization process 400 described in FIG. 4 is performed on the selected center frequency (foj). In step 513, when the Peak correlation value [m′(t)] for the selected center frequency is greater than the threshold value (V_(th)), the channel goodness quality is calculated in operation 515 as the difference between the present peak correlation value less the peak correlation value for the previous calculated peak value, after which the process calculates the goodness for the next frequency.

[0029] The threshold value is empirically derived based upon the measured channel bit error rate and the measured channel correlation voltage. The goal is to select a threshold value, which is at the limit of the bit error rate for the channel. A typical value for the threshold value is of the order of 1 millivolt. When the channel goodness is above the threshold value, the channel bit error rate is below what is required for reliable channel communication. When the correlation value drops below the threshold, the bit error rate has increased to impair channel reliability. Thus, channel goodness can determine whether there is change or no change in the peak correlation value and steps can be taken to improve the channel reliability by increasing the length of the PN code or changing the bit rate of the code.

[0030] Where the peak-correlated value is not greater than the threshold value, a flag is set in an operation 515 to indicate decreased channel reliability. Thereafter, the next sub-frequency N of the center frequency (fo) is checked for phase (foj) and the phase counter is incremented by +1 in an operation 519. The phase (j) is checked against the maximum phase (jmax) in an operation 521. A “yes” condition returns the process to step 503 to select another center sub-frequency (f′) for synchronization and calculation of channel goodness. Otherwise, a “no” condition returns the process to the operation 511 where a new center frequency is selected for synchronization and goodness calculation. The process continues until all sub-frequencies of the carrier (f_(c)) have been processed in the operation 505, after which the process ends in the operation 507.

[0031] It should be noted that the spread spectrum signaling can make use of system gains enabling channel measurements to be performed in the background while the system transmits signaling and Non-Return To-Zero (NRZ) data.

[0032] While the invention has been shown and described in conjunction with the preferred embodiment, various changes can be made without departing from the spirit and scope of the invention as defined in the appended claims, in which: 

We claim:
 1. A method of dynamic measurement of a communication channel using Direct Sequence Spread Spectrum (DSSS) communication system, comprising the steps of: (a) generating a Pseudo Noise (PN) code where (γ₀=1/T); (b) modulating a carrier (cos. 2Σγ_(c)) with the PN code; (c) providing the PN coded data signal [s(t)] to a correlator via a communication channel that includes a channel noise signal for determining transmission characteristics of the channel; and (d) determining a correlator value for extracting the PN code from the coded data signal, where the correlator value is the wanted exact measure of the loss of the channel under test.
 2. The method of claim 1 further comprising the steps of: (e) selecting a Signal to Noise Ratio as a threshold for reliable communication in the channel; (f) comparing the correlation value to this threshold; and (g) determining if the correlation value is above or below the threshold, where a correlation value below the threshold is indicative of unreliable transmission trough the channel.
 3. The method of claim 1 and 2 further comprising the steps of: (h) adjusting the frequency of the carrier to frequencies relevant for the transmission of the data information content; and (i) and measuring the correlation value for each carrier frequency, where the correlation value vs. frequency is a measure for the frequency dependent loss of the channel.
 4. The method of claim 1 further comprising the steps of: (j) adjusting the power level of the data to compensate for attenuation of the transmitted data.
 5. The method of claim 1 further comprising the step of: (k) altering the correlation value by adjusting the PN code rate (γ₀) or the carrier frequency (γ_(c)).
 6. The method of claim 1 further comprising the step of: (l) adjusting the length of the PN code sequence to compensate for a noisy environment.
 7. The method of claim 1 further comprising the step of modulating the PN sequence and/or the carrier and/or the PN modulated carrier with a data signal [m (t)].
 8. The method of claim 1 further comprising the step of: (m) determining the presence of an unreliable data transmission where the predetermined maximum PN code length does not exceed the threshold value.
 9. A system of dynamic measurement of a communication channel using Direct Sequence Spread Spectrum (DSSS) communication system, comprising: (a) code generating apparatus which generates a Pseudo Noise (PN) code where (γ₀=1/T); (b) carrier modulating apparatus which modulates a carrier (cos. 2Σγ_(c)) with the PN code; (c) data modulating apparatus which modulates the PN coded carrier with a data signal [m(t)]; (d) transmitter apparatus which transmits the PN coded data signal [s(t)] to a correlator via a communication channel for determining transmission characteristics of the channel; (e) frequency-controlling apparatus that tunes the carrier frequency to predetermined frequencies relevant for the transmission of the data content; (f) decoding apparatus which determines a correlator value for each frequency for extracting the PN code from the coded data signal; and (g) analysis apparatus which keeps track of the correlator values and thereby determines the frequency dependent loss of the transmission channel.
 10. A system of dynamic measurement of a communication channel using Direct Sequence Spread Spectrum (DSSS) communication system, comprising: (a) code generating apparatus which generates a Pseudo Noise (PN) code where (γ₀=1/T); (b) carrier modulating apparatus which modulates a carrier (cos. 2Σγ_(c)) with the PN code; (c) data modulating apparatus which modulates the PN coded carrier with a data signal [m(t)]; (d) transmitter apparatus which transmits the PN coded data signal [s(t)] to a correlator via a communication channel for determining transmission characteristics of the channel; (e) selecting apparatus which select a Signal to Noise Ratio as a threshold for reliable communication in the channel; (f) decoding apparatus which determines a correlator value for extracting the PN code from the coded data signal; (g) comparison apparatus which compares the correlation value of the PN code to the threshold value; and (h) analysis apparatus which determines if the correlation variable is above or below the threshold; where a correlation value below the threshold is indicative of unreliable transmission through the channel and a correlator value above the threshold is indicative or reliable transmission through the channel.
 11. A method of dynamic measurement of a communication channel using Direct Sequence Spread Spectrum (DSSS) communication system, comprising the steps of: (a) generating a Pseudo Noise (PN) code where (γ₀=1/T); (b) modulating a carrier (cos. 2Σγ_(c)) with the PN code; (c) modulating the PN coded carrier with a data signal [m(t)]; (d) providing the PN coded data signal [s(t)] plus a channel noise signal to a correlator via a communication channel for determining transmission characteristics of the channel; (e) selecting a Signal to Noise Ratio as a threshold for reliable communication in the channel; (f) determining a correlator value for extracting the PN code from the coded data signal; (g) comparing the correlation value of the PN code to the threshold value; and (h) determining if the correlation variable is above or below the threshold; where a correlation value below the threshold is indicative of unreliable transmission through the channel and a correlator value above the threshold is indicative or reliable transmission through the channel.
 12. The method of claim 11 further comprising the steps of: (i) adjusting the power level of the data to compensate for attenuation of the transmitted data.
 13. The method of claim 11 further comprising the step of: (j) altering the correlation value by adjusting the PN code rate (γ₀) or the carrier frequency (γ_(c)).
 14. The method of claim 11 further comprising the step of: (k) adjusting the length of the PN code sequence to compensate for a noisy environment.
 15. The method of claim 11 further comprising the step of: (l) determining the presence of an unreliable data transmission where the predetermined maximum PN code length does not exceed the threshold value.
 16. A system of dynamic measurement of a communication channel using Direct Sequence Spread Spectrum (DSSS) communication system, comprising: (a) code generating apparatus which generates a Pseudo Noise (PN) code where (γ₀=1/T); (b) carrier modulating apparatus which modulates a carrier (cos. 2Σγ_(c)) with the PN code; (c) data modulating apparatus which modulates the PN coded carrier with a data signal [m(t)]; (d) transmitter apparatus which transmits the PN coded data signal [s(t)] to a correlator via a communication channel for determining transmission characteristics of the channel; (e) selecting apparatus which select a Signal to Noise Ratio as a threshold for reliable communication in the channel; (f) decoding apparatus which determines a correlator value for extracting the PN code from the coded data signal;
 18. The medium of claim 17 further comprising (e) program instructions selecting a Signal to Noise Ratio as a threshold for reliable communication in the channel; (f) program instructions comparing the correlation value to this threshold; and (g) program instructions determining if the correlation value is above or below the threshold, where a correlation value below the threshold is indicative of unreliable transmission trough the channel.
 19. The medium of claim 17 and 18 further comprising: (h) program instructions adjusting the frequency of the carrier to frequencies relevant for the transmission of the data information content; and (i) program instructions measuring the correlation value for each carrier frequency, where the correlation value vs. frequency is a measure for the frequency dependent loss of the channel.
 20. The medium of claim 17 further comprising: (j) program instructions adjusting the power level of the data to compensate for attenuation of the transmitted data.
 21. The medium of claim 17 further comprising: (k) program instructions altering the correlation value by adjusting the PN code rate (γ₀) or the carrier frequency (γ_(c))
 22. The medium of claim 17 further comprising: (l) program instructions adjusting the length of the PN code sequence to compensate for a noisy environment.
 23. The medium of claim 17 further comprising: (m) program instructions modulating the PN sequence and/or the carrier and/or the PN modulated carrier with a data signal [m(t)].
 24. The medium of claim 17 further comprising: (n) program instructions determining the presence of an unreliable data transmission where the predetermined maximum PN code length does not exceed the threshold value. 